using MediatR;
using B.S.XZYData.ErrorCode;
using System.Collections.Generic;

namespace B.S.XZYData.Api.Read.Application.Command.Process
{
    /// <summary>
    /// 获取所有工序命令
    /// </summary>
    public class GetAllProcessesCommand : IRequest<ApiResult<List<ProcessDetailDto>>>
    {
    }

    /// <summary>
    /// 工序详细信息数据传输对象
    /// </summary>
    public class ProcessDetailDto
    {
        /// <summary>
        /// 主键ID
        /// </summary>
        public long Id { get; set; }

        /// <summary>
        /// 工序编号
        /// </summary>
        public string ProcessNumber { get; set; } = string.Empty;

        /// <summary>
        /// 工艺外键
        /// </summary>
        public int RoutdId { get; set; }

        /// <summary>
        /// 工序名称
        /// </summary>
        public string ProcessName { get; set; } = string.Empty;

        /// <summary>
        /// 报工权限
        /// </summary>
        public string ReportingPermissions { get; set; } = string.Empty;

        /// <summary>
        /// 报工数配比
        /// </summary>
        public int ReportingRatio { get; set; }

        /// <summary>
        /// 不良品项列表
        /// </summary>
        public string? DefectiveItemList { get; set; }

        /// <summary>
        /// 测试字段1
        /// </summary>
        public string? TestField1 { get; set; }

        /// <summary>
        /// 测试字段2
        /// </summary>
        public string? TestField2 { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime? CreatorDate { get; set; }

        /// <summary>
        /// 创建人
        /// </summary>
        public string? Creator { get; set; }

        /// <summary>
        /// 修改时间
        /// </summary>
        public DateTime? UpdatorDate { get; set; }

        /// <summary>
        /// 修改人
        /// </summary>
        public string? Updator { get; set; }
    }
}
